Page({
  data: {
    hasUserAgreement: false
  },

  onShareAppMessage() {
    return {};
  },

  // 切换用户协议勾选状态
  toggleUserAgreement() {
    this.setData({
      hasUserAgreement: !this.data.hasUserAgreement
    });
  },

  // 处理微信登录
  async handleWechatLogin() {
    if (!this.data.hasUserAgreement) {
      wx.showToast({
        title: '请先同意用户协议',
        icon: 'none'
      });
      return;
    }

    try {
      // 获取用户信息
      const userInfoRes = await wx.getUserProfile({
        desc: '用于完善用户资料'
      });

      // 调用登录云函数
      const loginRes = await wx.cloud.callFunction({
        name: 'login',
        data: {
          userInfo: userInfoRes.userInfo
        }
      });

      if (loginRes.result.error) {
        throw new Error(loginRes.result.error);
      }

      // 存储用户信息到本地
      wx.setStorageSync('userInfo', {
        ...userInfoRes.userInfo,
        userId: loginRes.result.userId,
        managerId: loginRes.result.managerId
      });

      if (loginRes.result.isNewUser) {
        // 未注册用户，跳转到注册页
        wx.navigateTo({
          url: '../register-user/index'
        });
        return;
      }

      // 登录成功，根据是否是负责人跳转到不同页面
      if (loginRes.result.managerId) {
        // 有负责人ID，跳转到负责人页面
        wx.reLaunch({
          url: '/pages/manager/home/index'
        });
      } else {
        // 只有用户ID，跳转到用户页面
        wx.reLaunch({
          url: '/pages/user/home/index'
        });
      }

    } catch (error) {
      console.error('登录失败:', error);
      wx.showToast({
        title: '登录失败，请重试',
        icon: 'none'
      });
    }
  },

  // 处理新用户注册
  handleRegister() {
    wx.navigateTo({
      url: '../register-user/index'
    });
  },

  // 处理商家登录
  handleMerchantLogin() {
    wx.navigateTo({
      url: '../login-merchant/index'
    });
  }
});